home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / print / p1123mz4.zip / MAZE1123.DOC < prev    next >
Text File  |  1994-02-27  |  3KB  |  68 lines

  1.                                                       February 27, 1994
  2.  
  3.      Print mazes in three dimensions on your Panasonic 1123 printer.
  4.  
  5.      To generate a three dimensional plot of a maze with hexagonal rooms,
  6. issue the command "HEXAGON <random number seed> <bias>".  (For example,
  7. "HEXAGON 12345678 0.5".) A different random number seed will usually produce
  8. a different maze.  The "bias" is optional.  It compensates for ribbon wear.
  9. It defaults to 0.3 for a new ribbon.  Use 0.5 or higher for a worn ribbon.
  10. In each case, the maze is output to the file HEXAGON.MAZ and its solution is
  11. output to the file HEXAGON.SOL.  About 2 megabytes of expanded memory or
  12. disk space are needed for virtual memory.  If LPT1: is your Panasonic 1123
  13. printer, "COPY /B HEXAGON.MAZ LPT1:" to print the maze.  "COPY /B
  14. HEXAGON.SOL LPT1:" to print the solution.  Be sure to specify the /B switch!
  15. Sample output HEXAGON.MAZ and HEXAGON.SOL are included.
  16.  
  17.      SQUARE.EXE works like HEXAGON.EXE except that it yields mazes with
  18. square rooms.
  19.  
  20.      All of the Borland C++ 3.0 source code is supplied (with comments).
  21. If you compile it, use the "large" model.
  22.  
  23.      The following pieces of source code are specific to maze generation:
  24.  
  25.           CELL.* -- Each instance of this class represents a room in a maze.
  26.  
  27.           HEXMAZE.* -- each instance of this class is a maze having hexagonal
  28.             rooms.
  29.  
  30.           HEXAGON.CPP -- the source for HEXAGON.EXE.
  31.  
  32.           SQRMAZE.* -- each instance of this class is a maze having square
  33.             rooms.
  34.  
  35.           SQUARE.CPP -- the source for SQUARE.EXE.
  36.  
  37.      The following pieces may find application in other programs:
  38.  
  39.           ORACLE.* -- Each object derived from this class is a random number
  40.             generator.  "random_number()" returns integers uniformly distributed
  41.             between 0 and max_r_n_plus_1-1.
  42.  
  43.           VARRAY.H -- a template for one dimensional virtual arrays; you can
  44.             use expanded memory or (if expanded memory is not available) disk
  45.             space to break the 640K limit in DOS.
  46.  
  47.           TITILLAT.* -- an instance of this class displays a rotating bar to
  48.             let a user know a calculation intensive program is running.
  49.  
  50.           PLOT3D.* -- an abstract class.  Classes derived from this class may be
  51.             used to instantiate objects that will plot z=f(x,y) in three
  52.             dimensions.  The derived classes must supply the functions
  53.             "aspect_ratio", "display_initialize", "pset", "num_x_pixels",
  54.             "num_y_pixels", and "write_outfile".
  55.  
  56.           X1123X3D.* -- a class derived from PLOT3D.  It plots z=f(x,y) in
  57.             three dimensions on Panasonic 1123 printers.
  58.  
  59.      SPIKE.CPP demonstrates using VARRAY.H, TITILLAT.*, PLOT3D.*, and
  60. X1123X3D.* to plot a simple mathematical function; SPIKE.EXE is the
  61. corresponding executable code.
  62.  
  63.      I am the author of all the code in this package.  It may be freely
  64. distributed.
  65.  
  66.                                                    -- James L. Dean
  67.                                                       csvcjld@nomvs.lsumc.edu
  68.